home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 25
/
Aminet 25 (1998)(GTI - Schatztruhe)[!][Jun 1998].iso
/
Aminet
/
util
/
pack
/
xpk_Source.lha
/
xpk_Source
/
test
/
chunkhook.c
next >
Wrap
C/C++ Source or Header
|
1998-02-08
|
923b
|
36 lines
#include <xpk/xpk.h>
#ifdef __MAXON__
#define __asm
#define __saveds
#endif
ULONG __asm __saveds chunkfunc(register __a1 struct XpkProgress *prog)
{
ULONG i;
switch(prog->xp_Type)
{
case XPKPROG_START: PutStr("Start: "); break;
case XPKPROG_MID: PutStr("\rMid : "); break;
case XPKPROG_END: PutStr("\rEnd : "); break;
}
if(prog->xp_Type != XPKPROG_END)
Printf("%4s: %-8s (%3ld%% done, %2ld%% CF, %6ld cps) %s",
prog->xp_PackerName, prog->xp_Activity, prog->xp_Done,
prog->xp_CF, prog->xp_Speed, prog->xp_FileName);
else
Printf("%4s: %-8s (%3ldK, %2ld%% CF, %6ld cps) %s\033[K\n",
prog->xp_PackerName, prog->xp_Activity, prog->xp_ULen >> 10,
prog->xp_CF, prog->xp_Speed, prog->xp_FileName);
Flush(Output());
if((i = SetSignal(0, SIGBREAKF_CTRL_C) & SIGBREAKF_CTRL_C))
Printf("\n");
return i;
}
struct Hook chunkhook = { {0}, (ULONG (*)()) chunkfunc};